OCCA: A unified approach to multi-threading languages

نویسندگان

  • David S. Medina
  • Amik St.-Cyr
  • Timothy C. Warburton
چکیده

The inability to predict lasting languages and architectures led us to develop occa, a C++ library focused on host-device interaction. Using run-time compilation and macro expansions, the result is a novel single kernel language that expands to multiple threading languages. Currently, occa supports device kernel expansions for the OpenMP, OpenCL, and CUDA platforms. Computational results using finite difference, spectral element and discontinuous Galerkin methods show occa delivers portable high performance in different architectures and platforms.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Efficient parallelization of the genetic algorithm solution of traveling salesman problem on multi-core and many-core systems

Efficient parallelization of genetic algorithms (GAs) on state-of-the-art multi-threading or many-threading platforms is a challenge due to the difficulty of schedulation of hardware resources regarding the concurrency of threads. In this paper, for resolving the problem, a novel method is proposed, which parallelizes the GA by designing three concurrent kernels, each of which running some depe...

متن کامل

Using templates to handle multi-threading

Neither C++ nor the standard library include any support for multi-threading or multi-processing. Some other languages provide native support for parallelism but C++ programmers are thrown back on operating system specific support. However, OS support offers little in the way of abstraction for thread creation, termination, critical sections and so on. Abstracting these mechanisms to make the d...

متن کامل

Optimal Locating and Sizing of Unified Power Quality Conditioner- phase Angle Control for Reactive Power Compensation in Radial Distribution Network with Wind Generation

In this article, a multi-objective planning is demonstrated for reactive power compensation in radial distribution networks with wind generation via unified power quality conditioner (UPQC). UPQC model, based on phase angle control (PAC), is used. In presented method, optimal locating of UPQC-PAC is done by simultaneous minimizing of objective functions such as: grid power loss, percentage of n...

متن کامل

Concurrent Programming Constructs and First-Class Logic Engines

Multi-threading has been adopted in today’s Prolog implementations as it became widely available in implementation languages like C or Java. An advantage of multi-threading over more declarative concurrency models like various AND-parallel and OR-parallel execution schemes, is that it maps to the underlying hardware directly: on typical multi-core machines threads and processes are mapped to di...

متن کامل

High-Order Finite-differences on multi-threaded architectures using OCCA

High-order finite-difference methods are commonly used in wave propagators for industrial subsurface imaging algorithms. Computational aspects of the reduced linear elastic vertical transversely isotropic propagator are considered. Thread parallel algorithms suitable for implementing this propagator on multi-core and many-core processing devices are introduced. Portability is addressed through ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • CoRR

دوره abs/1403.0968  شماره 

صفحات  -

تاریخ انتشار 2014